80077e60 some struct of script data. 8007aecc points here. We store values here from script. Maybe temp region.
+0011 []       store 0xff here from script at start of map 0x20.
+0013 []       remove bit 0x80 here from script at start of map 0x20.

+0050 start of memory allocated area. Here we store data for runned script.
      divided in 3 blocks (seted in A2, seted in script data, seted in A3)
      looks like A2 - system script data. This is used in field scripting itself (0x14).
    + 00 [][][][] offset to script opcodes.
    + 04 []       store 7 here if we call 0x04 opcode
    + 05 []       init with 0. Maybe type of entity. If this is 1 then we do something at start of script cycle.
    + 06 []       script id.
    + 07 []       some other script id??? second param in func367d0.
    + 08 []       amount of allocated memory requested in A2 (in 4 bytes ints).
    + 09 []       amount of allocated memory requested in A2 + allocated memory seted in script data (in 4 bytes ints).
    + 0a []       some state.
    + 0c []       amount of allocated memory requested in A3 (in 4 bytes ints).
    + 0d []       maybe number of wait steps. It this is not 0xff and 0xfe then de discrease it by 1. It this is 0 - we run script cycle. 0xfe - looks like wait for script (related with +10).
    + 0e []       init with 0. Maybe script state. 0 - init, 1 - stop, 2 - run. If state 0 and we run script - it seted to 2 and go to next script. We run script cycle if this != 3.
    + 10 []       init with 0xff.
    + 12 []       we copy this to +e.

    +07 []       ? in 0x9c and 0xe2 opcode.
    +0f []       ? in 0x9c and 0xe2 opcode.
    +14 [][][][] Real X.
    +18 [][][][] Real Y.
    +1c [][][][] Real Z.
    +34 [][]     ? in 0x9c and 0xa8 and 0xe2 opcode.
    +36 [][]     store +76 here in 0x9c and 0xe2 opcode.
    +38 []       ? in 0xe2 opcode.
    +3a []       store +60 here in 0x9c and 0xe2 opcode.
    +3b []       ? in 0xa8 and 0xe2 opcode.
    +50 [][]     add 0x0008 bit in 0xe2 opcode.
    +5d []       store +69 here in 0x9c and 0xe2 opcode. Store something calculated in 0xe2 opcode (maybe).
    +60 []       store 0 here in 0x9c opcode. Store +90 here in 0xe2 opcode.
    +61 []       store +90 -1 here in 0x9c opcode. Store +91 here in 0xe2 opcode.
    +62 []       store 8 here in 0x9c opcode. Some flags. 0x41 opcode wait until there are 0x80 flag in not here.
    +64 []       store 0 here in 0x9c and 0xe2 opcode.
    +68 []       store 0 here in 0xe2 opcode. Current JUMP step.
    +69 []       ? in 0x9c and 0xe2 opcode.
    +76 [][]     ? in 0x9c and 0xe2 opcode.
    +90 []       ? in 0x9c and 0xe2 opcode.
    +91 []       ? in 0xe2 opcode.
    +92 []       store 1 byte  ([e2][ ][ ][ ][ ][ ][ ][ ][x]) from opcode 0xe2 here. Total JUMP step.
    +94 [][]     store 2 bytes ([e2][ ][x][x][ ][ ][ ][ ][ ]) from opcode 0xe2 here. Destination JUMP X.
    +96 [][]     store 2 bytes ([e2][ ][ ][ ][ ][ ][x][x][ ]) from opcode 0xe2 here. Destination JUMP Z.
    +a4 [][]     store +14 here in 0xe2 opcode. Start X here.
    +a6 [][]     store +18 here in 0xe2 opcode. Start Y here.
    +a8 [][]     store +1c here in 0xe2 opcode. Start Z here.
    +aa [][]     store 2 bytes ([e2][ ][ ][ ][x][x][ ][ ][ ]) from opcode 0xe2 here. JUMP height?

+1450 - start of list of memory allocated area (size 0xc).
    + 00 [][][][] pointer to start of memory allocated block.
    + 04 [][][][] pointer to end of memory allocated block.
    + 08 [][][][] address of next element in list. 0 if last element (not linked to anything).
+15c4 - last element (end of list of memory allocated area).
+15d0 [][][][] pointer to first element in scripting allocated memory list.
+15d4 [][][][] pointer to last element in scripting allocated memory list.

+15d8 - start of script list (size 0x8).
    + 00 [][][][] address of next element in list. 0 if last element (not linked to anything).
    + 04 [][][][] pointer to allocated memory.
+16d0 - last element.
+16d8 [][][][] pointer to first element in script list.
+16dc [][][][] pointer to current elementin script list.
+16e0 [][][][] pointer to last element in list.

+16e4 []       some script id? Maybe party 1 script.
+16e5 []       some script id? Maybe party 2 script.
+16e6 []       some script id? Maybe party 3 script.
+16e7 []       some script id? Maybe party 4 script.
+16e8 [][]     init with 0. Store 1 byte * 0x10 ([67][ ][x][ ]) from opcode 0x67 here. Not readed anywhere.
+16ea [][]     init with 0. Store 1 byte * 0x10 ([67][ ][ ][x]) from opcode 0x67 here. Not readed anywhere.
+16ec []       init with 0. Store 1 here in 0x2e opcode.
+16ed []       init with 0. ? in 0x9c, 0x9d, 0xe2 opcode. Some script id?
+16ef []       init with 0.
+16f8 []       init with 0.
+1700 [][]     init with 0. Store something here in 0x2e opcode.

8007adf8 [][][][] pointer to script events offsets and info.
8007adfc [][][][] number of something in scripts (+3 from start)

8007aea0 [][][][] store pointer to start of current opcode here (to restore it if needed)

8007aecc [][][][] pointer to 80077e60 struct or data.

8007aef0-8007b6ef some array to store script variable. Maybe savemap.
+  2 [][]     set to 0x2710 at start of field 20 if flag 0x01 in +17 is set (then remove this flag).
+  8 []       set to 0x7d at start of field 20.
+  9 [][]     set to 0x0283 at start of field 20.
+  b [][]     set to 0xffff at start of field 20.
+  d []       some state (0,1,9). Related to +9. Set to 1 at start of field 20.
+  e []       some state (0,1,9). Related to +b. Set to 0 at start of field 20.
+ 17 []       some flags. Checked and used in field 20. Not really used.

8007b6f4 [][][][] store here byte after opcode. Flags stream. Everytime we call 0xa8 opcode we do something if 1st bit is set and then right shift it by 1.
8007b6f8 [][][][] if 1 here then we not roll back 1 opcode.

8007b704 [][][][] pointer to allocated scipt memory (or some other script memory).
8007b708 [][][][] ?? some state?
8007b70c [][][][] pointer to allocated script struct +0 [][][][] of which is pointer to currently executed script position.

8007b710 [][][][] increment this if some conditions met in 0x9c and 0xe2 opcode.

8007bbd8 [][][][] 0xe3 opcode store value here ([e3][ ][x]).

8007bcb8 script stack address (each item 0x04 size).

8007bcf8 [][][][] pointer to allocated script memory data after system block.

8008b28c character struct (0x90 size)

800c9df4 [][][][] pointer to some struct with size 0x28.
800c9df8 [][][][] pointer to walkmesh file after 4 bytes header.
800c9dfc [][][][] pointer to walkmesh vertexes data.

800caad8 - 800c9df4 points here. Array of structs with 0x28 size.
+00 [][]     ?
+04 [][]     ?
+06 [][]     ?
+08 [][]     ?
+0a [][]     ?

8010a7b8 - field script here.

80125105 - field walkmesh here.

800c612c : LHU     801fff00 (t2), 002c (80125108 (s5)) [80125134]